package com.jk.bguser.dao;

import com.jk.bguser.entity.CouponEntity;
import com.jk.damaicommon.entity.TicketEntity;
import com.jk.bguser.entity.UserEntity;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author 赵优秀
 * @version 1.0.0
 * @ClassName UserDao.java
 * @Description TODO
 * @createTime 2021年09月01日 10:55:00
 */
@Repository
public interface UserDao {
    /**
     * @throws
     * @title
     * @description
     * @author 赵优秀
     * @updateTime 2021/9/2 9:23
     */
    List<UserEntity> findUser(UserEntity userEntity);

    //批量删除
    void delAll(@Param("ids") String ids);

    //批量冻结
    void freezeAll(@Param("ids") String ids);

    //逻辑删除
    void del(Integer id);

    //冻结
    void freezeUser(Integer id);

    //解冻
    void UnFreezeUser(Integer id);

    //回显
    UserEntity getByid(Integer id);

    //修改
    void updateUser(UserEntity userEntity);

    //查询冻结用户
    List<UserEntity> findFreezeUser(UserEntity userEntity);

    //查询删除用户
    List<UserEntity> findDelUser(UserEntity userEntity);

    //恢复
    void onUser(Integer id);

    //批量结冻
    void onFreezeAll(String ids);

    //查询优惠券数量
    List<UserEntity> finCoupon();
    //查询数量
    List<CouponEntity> getCount(Integer userId);
    //查询已有的优惠券
    List<TicketEntity> grantCoupon();
    //新增发放的优惠券
    void addCoupon(CouponEntity coupon);
    //修改已有优惠券的数量
    void updateCount(Integer tickId);
    //查询用户所有的优惠券
    List<TicketEntity> userCoupon(Integer id);

    TicketEntity getremainCount(Integer tickId);
}
